package server.feedbacks;

import java.util.Arrays;
import java.util.List;

import server.database.AbstractTable;
import server.database.DatabaseColumn;
import server.database.IDatabaseTable;

public class FeedbacksTable extends AbstractTable
{
	public static final String TABLE_NAME = "Feedbacks";

	public static final DatabaseColumn ID = new DatabaseColumn(IDatabaseTable.ID, INTEGER, Arrays.asList(AUTO_INCREMENT));
	public static final DatabaseColumn USER = new DatabaseColumn("user", STRING, Arrays.asList(NOT_NULL));
	public static final DatabaseColumn SUBMIT_DATE = new DatabaseColumn("submit_date", DATE, Arrays.asList(NOT_NULL));
	public static final DatabaseColumn TITLE = new DatabaseColumn("title", STRING, Arrays.asList(NOT_NULL));
	public static final DatabaseColumn CONTENT = new DatabaseColumn("content", STRING, Arrays.asList(NOT_NULL));
	public static final DatabaseColumn STATUS = new DatabaseColumn("status", INTEGER, Arrays.asList(NOT_NULL));
	public static final DatabaseColumn RESPONSE = new DatabaseColumn("response", STRING);
	public static final DatabaseColumn RESPONSE_READ = new DatabaseColumn("response_read", INTEGER, Arrays.asList(NOT_NULL));

	public final List<DatabaseColumn> m_lstColumns = Arrays.asList(ID, USER, SUBMIT_DATE, TITLE, CONTENT, STATUS, RESPONSE, RESPONSE_READ);
	public final List<DatabaseColumn> m_lstKey = Arrays.asList(ID);

	@Override
	public String getTableName()
	{
		return TABLE_NAME;
	}

	@Override
	public List<DatabaseColumn> getColumns()
	{
		return m_lstColumns;
	}

	@Override
	public List<DatabaseColumn> getPrimaryKey()
	{
		return m_lstKey;
	}

	@Override
	public List<DatabaseColumn> getUniqueKey()
	{
		return null;
	}

}
